package net.realsee.domain.wcs.rcs.hik;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

/**
 * 海康RCS继续执行任务参数
 *
 * @author 孙正华
 * @since 2023/8/18 10:04
 */
@Data
public class HikContinueTaskReq {

    /**
     * 请求编号，每个请求都要一个唯一编号， 同一个请求重复提交， 使用同一编号
     */
    private String reqCode;

    /**
     * 请求时间戳，格式: “yyyy-MM-dd HH:mm:ss”
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private String reqTime;

    /**
     * 客户端编号，如 PDA，HCWMS 等。
     */
    private String clientCode;

    /**
     * 令牌号, 由调度系统颁发。
     */
    private String tokenCode;

    /**
     * 工作位，与 RCS-2000 端配置的位置名称一致。任务完成时有值，与生成任务单接口中的 wbCode 一致。
     */
    private String wbCode;

    /**
     * 货架号，采用货架号触发的方式
     */
    private String podCode;

    /**
     * AGV 编号，采用 AGV 编号触发的方式
     */
    private String agvCode;

    /**
     * 任务单号,选填, 不填系统自动生成，必须为 64 位 UUID
     */
    private String taskCode;

    /**
     * 下一个子任务的序列，指定第几个子任务开始执行，校验子任务执行是否正确。不填默认执行下一个子任务。
     */
    private String taskSeq;

    /**
     * 下一个位置信息，在任务类型中配置外部设置时需要传入，否则不需要设置。待现场地图部署、配置完成后可获取
     * positionCode:位置编号
     * type:对象类型定义:
     * 00:代表 nextPositionCode 是一个位置
     * 02:代表 nextPositionCode 是一个策略
     */
    private HikPositionCodePath nextPositionCode;

}
